package com.lecyon.farm.vo.add;

import com.lecyon.farm.base.BaseVo;
import com.lecyon.farm.common.constant.CommonConstant;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;

/**
 * 对象存储配置信息Vo
 *
 * @author YaoZheng
 * @since 2020-04-20
 */
@Data
@ApiModel("新增对象存储配置信息Vo")
public class AddObjectStoresConfigVo extends BaseVo {

    @ApiModelProperty(name = "operators", value = "运营商")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_FIELD, message = "运营商字段长度必须在{min} ~ {max}之间")
    private String operators;

    @ApiModelProperty(name = "end_point", value = "节点")
    @NotBlank(message = "节点不能为空")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_FIELD, message = "节点长度必须在{min} ~ {max}之间")
    private String endPoint;

    @ApiModelProperty(name = "access_key_id", value = "访问密钥Id")
    @NotBlank(message = "访问密钥id不能为空")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_FIELD, message = "访问密钥id长度必须在{min} ~ {max}之间")
    private String accessKeyId;

    @ApiModelProperty(name = "access_key_secret", value = "秘密访问密钥")
    @NotBlank(message = "秘密访问密钥不能为空")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_FIELD, message = "秘密访问密钥长度必须在{min} ~ {max}之间")
    private String accessKeySecret;

    @ApiModelProperty(name = "bucket_name", value = "桶名称")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_FIELD, message = "桶名称长度必须在{min} ~ {max}之间")
    private String bucketName;

    @ApiModelProperty(name = "keyWord", value = "关键词")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_FIELD, message = "关键词长度必须在{min} ~ {max}之间")
    private String keyWord;

    @ApiModelProperty(name = "remark", value = "备注")
    @Length(min = CommonConstant.MIN_LENGTH_FIELD, max = CommonConstant.MAX_LENGTH_REMARK_FIELD, message = "备注长度必须在{min} ~ {max}之间")
    private String remark;

}
